package org.asiainfo.system.domain;

import java.util.Date;

import lombok.Data;
import lombok.EqualsAndHashCode;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table;
import org.asiainfo.common.tenant.core.TenantEntity;

/**
 * 系统通告表(SysAnnouncement)实体类
 *
 * @author dotor-ww
 * @since 2024-08-27 19:37:41
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Table("sys_announcement")
public class SysAnnouncement extends TenantEntity {

    /**
     * 主键ID
     */
    @Id
    @Column(value = "id")
    private Long id;
    /**
     * 业务ID
     */
    @Column(value = "bus_id")
    private Long busId;
    /**
     * 标题
     */
    @Column(value = "title")
    private String title;
    /**
     * 内容
     */
    @Column(value = "msg_content")
    private String msgContent;
    /**
     * 开始时间
     */
    @Column(value = "start_time")
    private Date startTime;
    /**
     * 结束时间
     */
    @Column(value = "end_time")
    private Date endTime;
    /**
     * 发布人
     */
    @Column(value = "sender")
    private Long sender;
    /**
     * 优先级（L低，M中，H高）
     */
    @Column(value = "priority")
    private String priority;
    /**
     * 消息类型1:通知公告2:系统消息
     */
    @Column(value = "msg_category")
    private String msgCategory;
    /**
     * 通告对象类型（USER:指定用户，ALL:全体用户）
     */
    @Column(value = "msg_type")
    private String msgType;
    /**
     * 发布状态（0未发布，1已发布，2已撤销）
     */
    @Column(value = "send_status")
    private String sendStatus;
    /**
     * 发布时间
     */
    @Column(value = "send_time")
    private Date sendTime;
    /**
     * 撤销时间
     */
    @Column(value = "cancel_time")
    private Date cancelTime;
    /**
     * 业务类型(email:邮件 bpm:流程 tenant_invite:租户邀请)
     */
    @Column(value = "bus_type")
    private String busType;
    /**
     * 打开方式(组件：component 路由：url)
     */
    @Column(value = "open_type")
    private String openType;
    /**
     * 组件/路由 地址
     */
    @Column(value = "open_page")
    private String openPage;
    /**
     * 摘要/扩展业务参数
     */
    @Column(value = "msg_abstract")
    private String msgAbstract;
    /**
     * 指定用户
     */
    @Column(value = "user_ids")
    private String userIds;
    /**
     * 删除状态（0，正常，1已删除）
     */
    @Column(value = "del_flag")
    private String delFlag;
}

